package cn.smbms.dao.provider;

import cn.smbms.pojo.Provider;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.util.List;

public interface ProviderMapper {

//    /**
//     * 查询供应商表记录数
//     * @return
//     */
//    public int count();
//    /**
//     * 查询供应商列表
//     * @return
//     */
//    public List<Provider> getProviderList();
//    /**
//     * 根据供应商名称查询供应商列表(模糊查询)
//     * @param proName
//     * @return
//     */
//    public List<Provider> getProviderListByProName(String proName);
//
//
//    /**
//     * 增加供应商
//     * @param provider
//     * @return
//     */
//    public int add(Provider provider);
//
//    /**
//     * 修改供应商信息
//     * @param provider
//     * @return
//     */
//    public int modify(Provider provider);
//
//    /**
//     * 根据供应商ID删除供应商信息
//     * @param delId
//     * @return
//     */
//    public int deleteProviderById(@Param("id")Integer delId);

    @Select("select * from smbms_provider where id = #{id}")
    public Provider getProviderById(@Param("id")Integer id);

    @Select("select * from smbms_provider")
    public List<Provider> getProviderList();

    @Select("INSERT INTO smbms_provider (proCode,)")

    @Select("insert into smbms_provider(proCode,proName,proDesc,proContact,proPhone,proAddress,proFax,createdBy,creationDate)" +
            "values(#{proCode},#{proName},#{proDesc},#{proContact},#{proPhone},#{proAddress},#{proFax},#{createdBy},#{creationDate})")
    int add(Provider provider);

    @Select("update smbms_provider set proName=#{proName},proDesc=#{proDesc},proContact=#{proContact},proPhone=#{proPhone},"+
            "proAddress=#{proAddress},proFax=#{proFax},modifyBy=#{modifyBy},modifyDate=#{modifyDate} where id=#{id}")
    int modify(Provider provider);

    @Select("delete from smbms_provider where id=#{id}")
    int deleteProviderById(@Param("id")Integer id);

    @Select("select count(id) from smbms_provider")
    int count();

    @Select("select * from smbms_provider where proName like concat('%',#{proName},'%')")
    List<Provider> getProviderListByProName(@Param("proName")String proName);

}
